For the last fifteen years, image compression algorithms have been using “vision pyramid” models to reduce visual quality loss during quantization. A typical image compression flowchart is illustrated on FIG. 1: the image is first decomposed into coefficients showing the spatial frequency distribution of color values of pixels (e.g. using Discrete Cosine Transform or Wavelet Transform), with the aim of organizing information from a human vision perspective. Then, spatial frequency distribution coefficients are either smoothly or severely quantized, depending on the target compression ratio, with coarse information being advantaged over image details. Finally, binary coding is applied to reduce the size of quantized spatial frequency distribution coefficients. In the specific case of JPEG/MPEG image compression, the frequency transform step and the quantization step are applied locally, on 8×8 pixels block areas.
A color gamut defines the complete set of colors an imaging display device is able to reproduce, or an image capturing device is able to capture, or that is contained within an item of visual content such as an image. Because of hardware limitations, many color devices are unlikely to provide a good reproduction of colors of images which have been processed in order to be correctly reproduced on other displays, for example with wider color gamut. A common case would be the comparison between colors of images being rendered on a CRT monitor and the same images coming out of a low quality color printer.
In order to ensure the best reproduction quality of images on different color reproduction devices having different color gamuts, several techniques have been proposed throughout the years, as those using so-called “Gamut Mapping” of colors. Gamut Mapping of colors ensures that the colors of a source device are transformed to be located inside the gamut of a destination device. Such an operation can be performed using a series of criteria that will minimize the impact of the transformation that inherently introduces changes in the colorimetry of images. Several algorithms have been developed to map source colors into destination colors, such as lightness mapping or chroma mapping, which represents a first direction towards Human Visual System (“HVS”) criteria, since the human eyes do process visual data through lightness and chroma considerations.
The CIE standardized a visual perceptually-uniform color space denominated CIE 1976 (L* u* v), also known as CIELUV, accounts for the psychophysics of human vision by constructing a three-dimensional color space that is substantially perceptually uniform. The coordinates of a color in CIELUV requires a color in well known CIE1931 XYZ to be normalized with respect to the XYZ coordinates of a “white point”, as defined in the art. One axis of CIELUV color space is denominated the CIE 1976 Lightness, noted L*, and is defined using a cube-root function in XYZ with a straight-line segment at the origin. The position of a color along the L* axis contains only information derived from its luminance as related to the reference white point. The other two axes of CIELUV are derived from the chromaticity of the image point related to the chromaticity of the reference white point. Multiplying the difference between the chromaticities of the image point and the reference white point by a value proportional to L* mimics the psycho-physical effect that causes darker colors to appear less chromatic, thus leading to perceptual uniformity in the CIELUV space. The cylindrical representation of the CIELUV color space is also useful. The L* axis remains unchanged while the plane defined by the two Cartesian chrominance axes is expressed in terms of a phase angle corresponding to the so-called hue H and a radius associated with the so-called chroma C. In 1976, the CIE also standardized another visual perceptually-uniform color space with characteristics similar to the CIELUV color space, denominated the CIE 1976 (L* a* b), or CIELAB, which also can be expressed in terms of a Cartesian coordinate system (L by a by b) or a cylindrical coordinate system (L by hue H by chroma C). In a perceptually-uniform color space, the three Cartesian bases are denominated luminance (L) and chrominance (C1, C2). The Cartesian chrominance plane may be also described in terms of two polar chrominance bases denominated chroma (C) and hue angle (H). Thus, chroma (C) is defined as the square root of the sum of the squares of the two chrominance values (C1 and C2) and hue angle (H) is defined as the arctangent of the ratio of the two chrominance dimensions (C2/C1).
Many color Gamut Mapping techniques tend to focus on 2D or 3D geometric solutions. Such techniques consist in reshaping/mapping parts of a source color gamut with either hard or soft color compression/clipping or extension algorithms so these reshaped/mapped parts can fit in a destination color gamut. Some algorithms use criteria in order to limit the visual impact of the mapping. Known criteria are for instance hue conservation, spatial homogeneity of mapping in color space and contrast preservation.
A typical 2D geometric mapping method would perform clipping in the CIEL*a*b* color space, more precisely in a L*C* subspace, where L is the lightness of a color and where C* represents the chroma of a color:
      C    *    =                    a                  *          2                    +              b                  *          2                    (a high C* value represents a high saturation level). Examples of hard and soft color clipping methods can be observed on FIG. 2, taken from the article entitled “Gamut mapping: Evaluation of chroma clipping techniques for three destination gamuts”, authored by Montag, E. D. and Fairchild, M. D., published in IS&T/SID Sixth Color Imaging Conference, Scottsdale, 57-61, 1998. In “straight clipping”, all out-of-gamut colors are mapped into the destination gamut in a direct C*-shift operation with no change of the lightness L*. Softer color clipping methods may use a fixed anchor point (“node clipping”) to ensure a better preservation of saturation levels. More details about such clipping methods will be given below.
Some color gamut mapping algorithms have less visual impact than others depending on the criterion to be minimized. Generally, the criterion to be minimized is global and all pixels of the image to be color mapped are processed usually with the same algorithm. Such methods do not rely on local variations in the image, and are likely to generate inappropriate contrasts in certain cases (e.g. increasing quantization or acquisition noise in homogeneous areas).
On the opposite, different parts of an image can be color mapped differently depending on their local characteristics. The color gamut mapping methods using such information are referred to as “content-dependent”, notably “spatial frequency-dependent”. Human vision studies teach that a human observer tends to hierarchically process visual data in a scene, from coarse to fine elements. This behavior is generally modeled after a Gaussian pyramid, or any kind of signal processing tool that can distinguish and organize the content of an image from low to high spatial frequencies of distribution of color values within said image.
The document U.S. Pat. No. 6,961,477 discloses applying different color gamut mapping algorithms to different regions of an image according to the spatial frequency content of color values within this image. According to this document, the regions of the original image are spatially segregated into “busy” regions and “smooth” region and each region is associated with one or plural color gamut mapping algorithms. An important issue with this solution is that the color mapping of adjacent pixels having the same color value may be very different at the boundary of two regions, then introducing unacceptable artifacts. EP1098511, US2003/012427 and U.S. Pat. No. 6,516,089 illustrate other examples of color gamut mapping algorithms that depend on spatial frequency content of the images to map. In U.S. Pat. No. 5,450,216, such a spatial filtering exploits the differing spatial frequency regions of insensitive human visual response to both lightness and chrominance changes, according to the so-called Contrast Sensitivity Function (CSF), which concerns the lightness and is achromatic, and according to Chromatic Contrast Sensitivity Functions (CCSF), which concerns the chrominance according first to a red-green chroma, and secondly to a blue-yellow chroma, then allowing the mapping of colors in a manner that minimizes the human visual response both to the luminance and to the chrominance changes. For instance, as stated at column 8, lines 51-57, of this document, source colors are mapped in the direction of luminance only at low spatial frequencies to which human eyes are relatively insensitive to luminance variations but more sensitive to chrominance variations, then allowing a minimum change of chrominance.
The above-mentioned CSF and CCSF characterizing the Human Visual System (HVS) are very well known in the art. FIGS. 3 and 4 show example of such functions as given in the article entitles “The contrast sensitivity of human color vision to red-green and blue-yellow chromatic gratings”, authored by Kathy T. Mullen, published in the Journal of Physiology—London, Vol. 359, pages 381-400, 1985. On FIG. 3, the ∘ (circle) symbol designates the CSF based on measurements performed at 526 nm with a green monochromatic grating and the □ (square) symbol designates the red-green CCSF based on measurements performed at 526, 602 nm with a red-green grating. On FIG. 4, the ∘ (circle) symbol designates the CSF based on measurements performed at 577 nm with a yellow monochromatic grating and the □ (square) symbol designates the blue-yellow CCSF based on measurements performed at 577, 470 nm with a blue-yellow grating. Other sources may be also considered as the article entitled “Spatial scaling of central and peripheral contrast-sensitivity functions”, authored by Alan Johnston, published in the Journal of the Optical Society of America A, Vol. 4, page 1583, August 1987, variations of the CSF and CCSF are given according to different parts of the retina of human eyes.
FIG. 5 shows a classical diagram of a method of processing a compressed image into a decompressed color gamut mapped image: decompression and color gamut mapping of images use both spatial frequency analysis but are quite separate operations.